package com.charging.business.enums;

/**
 * 门架计费错误码定义
 *
 * @author JerryLu
 * @date 2024/8/10 17:00
 * @return
 */
public enum GantryFeeErrorEnum {
    /**
     * 正常
     */
    NO_ERROR(0, "正常"),
    /**
     * 省份计费参数缺失
     */
    PARMFILE_ABSENT(-10, "省份计费参数缺失"),
    /**
     * 省份计费参数存在但无效
     */
    PARMFILE_INVALID(-11, "省份计费参数存在但无效"),
    /**
     * 输入参数不正常
     */
    INVALID_IN_PARM(-12, "输入参数不正常"),
    /**
     * 申请内存失败
     */
    APPLY_MEM_FAILED(-13, "申请内存失败"),
    /**
     * 返回参数存在异常
     */
    RETURN_INVALID(-14, "返回参数存在异常");


    private final int value;
    private final String desc;

    GantryFeeErrorEnum(int value, String desc) {
        this.value = value;
        this.desc = desc;
    }

    /**
     * 根据错误值获取枚举实例
     *
     * @param value 错误值
     * @return 枚举实例
     */
    public static GantryFeeErrorEnum getInstanceByValue(int value) {
        for (GantryFeeErrorEnum error : values()) {
            if (error.getValue() == value) {
                return error;
            }
        }
        return null;
    }

    public int getValue() {
        return value;
    }

    public String getDesc() {
        return desc;
    }

}
